package com.atjava.nebula.core.util.context;

import java.io.IOException;
import java.net.URL;

import org.springframework.core.io.FileSystemResource;

import com.atjava.nebula.core.constant.ProjectConstant;
import com.atjava.nebula.core.exception.baseExp.SystemException;

/**用于处理Spring的配置文件设置路径时，把当前路径固定在WebRoot下，
 * 以适应当配置文件放在WEB-INF目录下时，在Web容器下运行和单元测试相同的当前路径
 * @author kyo
 *
 */
public class ResourceUtil extends FileSystemResource {

	public ResourceUtil(String path) {
		super(convertPath(path));
		
	}
	/**把路径根据项目路径进行转换
	 * @param path
	 * @return
	 */
	private static String convertPath(String path){
		
		return ProjectConstant.getPath()+path;
	}

	/* 
	 * @see org.springframework.core.io.FileSystemResource#getURL()
	 */
	public URL getURL() throws SystemException{
		
		URL url=null;
		try {
			url = super.getURL();
		} catch (IOException e) {
			throw new SystemException(e,"获取文件路径URL出错");
		}
		return url;
	}
}
